package api

type RateDetailedReq struct {
	BuyCurrency  string `json:"buy_currency"`
	SellCurrency string `json:"sell_currency"`
	Amount       string `json:"amount"`
	FixedSide    string `json:"fixed_side"`
}

type RateDetailedRes struct {
	SettlementCutOffTime string `json:"settlement_cut_off_time"`
	CurrencyPair         string `json:"currency_pair"`
	ClientBuyCurrency    string `json:"client_buy_currency"`
	ClientSellCurrency   string `json:"client_sell_currency"`
	ClientBuyAmount      string `json:"client_buy_amount"`
	ClientSellAmount     string `json:"client_sell_amount"`
	FixedSide            string `json:"fixed_side"`
	ClientRate           string `json:"client_rate"`
	PartnerRate          string `json:"partner_rate"`
	CoreRate             string `json:"core_rate"`
	DepositRequired      bool   `json:"deposit_required"`
	DepositAmount        string `json:"deposit_amount"`
	DepositCurrency      string `json:"deposit_currency"`
	MidMarketRate        string `json:"mid_market_rate"`
}

type CreateTransferReq struct {
	SourceAccountId      string `json:"source_account_id"`
	DestinationAccountId string `json:"destination_account_id"`
	Currency             string `json:"currency"`
	Amount               string `json:"amount"`
	Reason               string `json:"reason"`
}

type CreateTransferRes struct {
	Id                   string `json:"id"`
	ShortReference       string `json:"short_reference"`
	SourceAccountId      string `json:"source_account_id"`
	DestinationAccountId string `json:"destination_account_id"`
	Currency             string `json:"currency"`
	Amount               string `json:"amount"`
	Status               string `json:"status"`
	Reason               string `json:"reason"`
	CreatedAt            string `json:"created_at"`
	UpdatedAt            string `json:"updated_at"`
	CompletedAt          string `json:"completed_at"`
	CreatorAccountId     string `json:"creator_account_id"`
	CreatorContactId     string `json:"creator_contact_id"`
	UniqueRequestId      string `json:"unique_request_id"`
}

type CancelTransferReq struct {
	Id string `json:"id"`
}

type CancelTransferRes struct {
	Id                   string `json:"id"`
	ShortReference       string `json:"short_reference"`
	SourceAccountId      string `json:"source_account_id"`
	DestinationAccountId string `json:"destination_account_id"`
	Currency             string `json:"currency"`
	Amount               string `json:"amount"`
	Status               string `json:"status"`
	Reason               string `json:"reason"`
	CreatedAt            string `json:"created_at"`
	UpdatedAt            string `json:"updated_at"`
	CompletedAt          string `json:"completed_at"`
	CreatorAccountId     string `json:"creator_account_id"`
	CreatorContactId     string `json:"creator_contact_id"`
	UniqueRequestId      string `json:"unique_request_id"`
}
